package com.rybbaby.tss.platform.sysMenuPermissions.service;

import com.rybbaby.tss.core.web.service.IBaseService;
import com.rybbaby.tss.platform.sysMenuPermissions.entity.SysMenuPermissions;

import java.util.List;
import java.util.Map;


/**
 * @description 菜单权限数据库操作服务接口
 *
 * @author 谢进伟
 *
 * @createDate 2016-08-19 上午11:36:25
 */
public interface ISysMenuPermissionsService extends IBaseService<SysMenuPermissions> {
	
	/**
	 * 名称 数据源
	 *
	 * @return
	 */
	public abstract List<Map<String , Object>> pIdDatasource();
	
	/**
	 * 更新菜单权限权重
	 * 
	 * @param sortWeghtList
	 * @param referenceMap
	 */
	public boolean updateMenuPermissionWeight(List<Object[]> sortWeghtList, Map<String, List<String>> referenceMap);
	
	/**
	 * 获取用户的菜单权限
	 * 
	 * @param adminUserId
	 *            管理员用户Id
	 * @return
	 */
	public List<SysMenuPermissions> getAdminUserMenuPermissions(String adminUserId) throws Exception;
	
	/**
	 * 保存或修改菜单对象
	 * 
	 * @param entity
	 *            需要更新的菜单对象
	 * @return
	 */
	public abstract String saveOrUpdateMeenuPermission(SysMenuPermissions entity, Object loginUserId_obj);
}
